/*
 * ColoredTextArea.java
 *
 * Created on 29 februari 2008, 14:15
 *
 * To change this template, choose Tools | Template Manager
 * and open the template in the editor.
 */

package client.gui.controls;

import java.awt.*;
import javax.swing.*;
import javax.swing.text.*;


/** 
 * De klasse ColoredTextpane is een subklasse van JTextPane die 
 * het werken met kleuren toelaat.
 */
public class ColoredTextpane extends JTextPane{
    
    private DefaultStyledDocument doc =new DefaultStyledDocument();
    
    /** 
     * Class constructor stelt een nieuw DefaultStyledDocument in.
     */
    public ColoredTextpane() {
        this.setDocument(doc);
    }
    
    /**
     * Functie die tekst zal toevoegen aan het document
     * @param text De tekst die toegevoegd moet worden
     * @param color De kleur van de tekst
     */
    public void append(String text,Color color) {
        try {
            SimpleAttributeSet attr=new SimpleAttributeSet();
            StyleConstants.setForeground(attr,color);
            // string op het eind van de textPane toevoegen
            doc.insertString(doc.getLength(),text,attr);
        } catch(Exception e) {
           e.printStackTrace();
        }
    }
    
    /**
     * Functie die tekst toevoegt in een default kleur.
     * @param text De tekst die moet worden toegevoegd
     */
    public void append(String text) {
        append(text,Color.BLACK);
    }
}

